package net.qhzw.geologr5.gis.service.system.mapper;

import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import net.qhzw.geologr5.gis.service.system.entity.ProjectMap;
import net.qhzw.geologr5.gis.service.system.entity.ProjectMap2;
import net.qhzw.geologr5.gis.service.system.model.GisCartParam;
import net.qhzw.geologr5.gis.service.system.pojo.ProjectMapCartVo;
import net.qhzw.geologr5.gis.service.system.query.GisCartQuery;
import net.qhzw.geologr5.gis.service.system.query.GisQuery;
import net.qhzw.geologr5.gis.service.system.query.ProjectMapQuery;
import net.qhzw.geologr5.gis.service.system.vo.gis.GisVo;
import net.qhzw.geologr5.gis.service.system.vo.gis.GisVo2;
import net.qhzw.geologr5.gis.service.system.vo.project.ProjectMapVo;
import org.apache.ibatis.annotations.Param;

import java.util.List;


/***
 * 项目地图 mapper
 */
public interface ProjectMapMapper extends BaseMapper<ProjectMap> {


    /**
     * 项目地图查看
     * @param projectId
     * @return
     */
    List<ProjectMapVo> selectProjectMap(Integer projectId);


    /****
     * id集合 项目地图查看
     * @param ids
     * @return
     */
    List<ProjectMapVo> selectProjectMapByIdList(@Param("ids") List<Integer> ids);


    /***
     * 地图查看
     * @param query
     * @return
     */
    List<ProjectMap> showMap(ProjectMapQuery query);


    /***
     * gis空间查询
     * @param query
     * @return
     */
    List<GisVo> findProjectMap(GisQuery query);


    /***
     * id集合查询
     * @param projectMapIds
     * @return
     */
    List<ProjectMap> selectByIdList(@Param("projectMapIds") List<Integer> projectMapIds);

    /***
     * gis 空间查询
     * @param query
     * @return
     */
    List<ProjectMap2> selectMapList(GisQuery query);

    /**
     * 根据userId查询项目地图资料
     * @param query
     * @return
     */
    List<ProjectMapCartVo> selectByUserId(GisCartQuery query);


    /**
     * 查询最大id
     * @return
     */
    int selectIdMax();
}
